1. Field of the Invention
The present invention relates to an information processing system using a network for transferring information stored in one information processing device to another information processing device via a network.
2. Description of the Background Art
In recent years, the necessary technical background for realizing the information processing on a mobile terminal has been established by the advance of mobile communication and the reduction of information processing device size. A capacity of a memory medium to be provided in such a mobile terminal is limited by requirements for a movable size and a reasonable cost of the terminal, and it is usually difficult to store all the information required by a user in this memory medium with a limited capacity provided in the mobile terminal. For this reason, in order to realize the information processing on the mobile terminal, the memory medium of the mobile terminal is required to temporarily store only those information which are actually necessary in the information processing to be carried out at each moment, selectively out of all the information possessed by the user.
A conventionally known technique useful in such a situation is the caching technique which will now be described briefly.
Here, consider a case of an information processing device having an information processing unit, a first memory medium, and a second memory medium, where the second memory medium has a relatively small capacity to which a high speed access from the information processing unit is possible, while the first memory medium has a relatively large capacity to which only a low speed access from the information processing unit is possible by means of an information positioning function provided between the first and second memory media.
In this case, the processing power of this information processing device is improved as information to be processed by the information processing unit is physically located on the second memory medium as a cache even though this information appears as if it is located on the first memory medium logically. In a case of carrying out the information processing in this information processing device, the information processing unit normally carries out the information processing with respect to information stored in the second memory medium, but when information necessary in this information processing does not exist in the second memory medium (a case of cache miss), typically, the information processing is interrupted, and in order to secure a sufficient space in the second memory medium, the information positioning function selects information to be withdrawn from the second memory medium, writes this selected information back into the first memory medium if this selected information has been changed, and transfers requested information stored in the first memory medium to the second memory medium. Then, the information processing is resumed using the requested information now stored in the second memory medium as a cache.
This type of information processing device includes: (1) a virtual memory computer having a main memory formed by RAM, a disk device to be used as a virtual memory, and a virtual memory management function; and (2) a distributed file system formed by a client computer having a file cache, a server computer functioning as a file server, a network connecting between the client and server computers, and a distributed file management function.
In such an information processing device, a critical issue is the prevention of a lowering of the processing power due to an interruption of the information processing caused by an occurrence of the cache miss, and to this end, several algorithms are known for determining the information positioning scheme that can increase a probability for the necessary information to exist on the second memory medium, i.e., a probability for a cache hit. Usually, information to be read into the second memory medium is specified (as the information processing unit explicitly requests information necessary at each moment in the usual on-demand scheme), so that information that can be replaced by a new information is determined among information existing in the second memory medium at each moment.
Representative examples of this kind of algorithm include: (1) the LRU (Least Recently Used) algorithm which replaces information for which the latest access is oldest among information in the second memory medium; and (2) the FIFO (First-In First-Out) algorithm which replaces the oldest information among information in the second memory medium. The FIFO algorithm is easier to realize, but less effective than the LRU algorithm.
The reason why this caching technique is effective is that the most information processings have temporal and spatial information access localities. The cache misses occur until a stable state with a certain locality is reached, but once the necessary information is read into the second memory medium, a stable state with very few cache miss can be maintained until a transition to a next state with another locality begins.
Now, it is possible to expect this caching technique to be useful in the above described situation encountered in the information processing on the mobile terminal, by identifying the above described second memory medium with a memory medium provided in the mobile terminal, and the above described first memory medium with a memory medium provided in an information processing device (such as a file server in the home environment of the user, for example) which is storing all the information required by the user and which is accessible via a network. However, when the above described caching technique is applied to the mobile environment straightforwardly, the following problem arises.
Namely, in a case of the information processing on the mobile terminal, the mobile terminal and the server computer are to be connected via a network, but an availability of this network for the mobile terminal, and an available condition of this network such as an available bandwidth and a fee charged for use of this network in a case this network is available, are dependent on the environment at a destination moved by the mobile terminal which changes according to the activity of the user. Consequently, the cost for the cache processing required in the case of a cache miss will vary at different times depending on the activity of the user. In the mobile environment, it can be expected that a state in which this cost remains high will continue for a long time, and therefore it will be necessary to prevent an occurrence of a cache miss during this period.
However, in the conventional caching technique, information to be replaced is determined by estimating information to be accessed in near future according to the records of past information accesses, so that there is a high probability for the cache miss to occur frequently at the time of making a transition from a state with a certain locality to another state with a different locality. In addition, every time the user changes the content of his work conducted on the mobile terminal, information to be accessed by the mobile terminal also change, so that in the conventional caching technique, there is also a high probability for the cache miss to occur many times while the cost for the cache processing is high. Consequently, the straightforward application of the conventional caching technique would cause the considerable increase of the information transfer time and the network utilization fee, which can be a major factor for damaging the utility and convenience of the information processing device from the user's point of view.
In other words, the conventional caching technique lacks any consideration for the variation in time of the cost required for the cache processing that can be caused by the activity of the user of the mobile terminal, and therefore the straightforward application of this conventional caching technique to the information processing on the mobile terminal would considerably damage the utility and convenience from the user's point of view due to the cache miss occurring while the cost for the cache processing is high.